package com.example.testapp.activity.util;

import android.app.Activity;
import android.content.Context;

import com.example.testapp.activity.http.Contacts;
import com.umeng.socialize.bean.SHARE_MEDIA;
import com.umeng.socialize.controller.UMServiceFactory;
import com.umeng.socialize.controller.UMSocialService;
import com.umeng.socialize.sso.QZoneSsoHandler;
import com.umeng.socialize.sso.UMQQSsoHandler;

/**
 * 友盟分享工具类
 * Created by l on 2016/11/3.
 */

public class ShareUtils {

    public Context mContext;

    // 整个平台的Controller,负责管理整个SDK的配置、操作等处理
    private final UMSocialService mController = UMServiceFactory.getUMSocialService(Contacts.DESCRIPTOR);

    public ShareUtils(Context context) {
         this.mContext = context;
        // 配置需要分享的相关平台
        configPlatforms();
        mController.getConfig().setPlatforms(SHARE_MEDIA.WEIXIN, SHARE_MEDIA.WEIXIN_CIRCLE);
    }

    /**
     * 获取分享控制对象
     * @return
     */
    public UMSocialService getmController() {
        return mController;
    }

    /**
     * 配置分享平台参数
     */
    private void configPlatforms() {
        // 添加QQ、QZone平台
        addQQQZonePlatform();

        // 添加微信、微信朋友圈平台
        addWXPlatform();
    }

    /**
     *
     * @功能描述 : 添加QQ平台支持 QQ分享的内容， 包含四种类型， 即单纯的文字、图片、音乐、视频. 参数说明 : title, summary,
     *       image url中必须至少设置一个, targetUrl必须设置,网页地址必须以"http://"开头 . title :
     *       要分享标题 summary : 要分享的文字概述 image url : 图片地址 [以上三个参数至少填写一个] targetUrl
     *       : 用户点击该分享时跳转到的目标地址 [必填] ( 若不填写则默认设置为友盟主页 )
     *
     * 参数1为当前Activity，
     * 参数2为开发者在QQ互联申请的APP ID，
     * 参数3为开发者在QQ互联申请的APP kEY.
     * @return
     *
     */
    private void addQQQZonePlatform() {
        String appId = Contacts.QQ_APP_ID;
        String appSecret = Contacts.QQ_APP_SECRET;

        // 添加QQ支持, 并且设置QQ分享内容的target url
        UMQQSsoHandler qqSsoHandler = new UMQQSsoHandler((Activity) mContext, appId, appSecret);
        qqSsoHandler.setTargetUrl("http://www.woyouwaimai.com/d");
        qqSsoHandler.addToSocialSDK();

        // 添加QZone平台
        QZoneSsoHandler qZoneSsoHandler = new QZoneSsoHandler((Activity) mContext, appId, appSecret);
        qZoneSsoHandler.addToSocialSDK();
    }

    private void addWXPlatform() {

    }
}
